<html>
  <head>
    <title>
      setInterval
    </title>
  </head>
  <body>
    <script>
        /*
                 三、setInterval(callback,delay,rest)

                           设定一个定时器。按照指定的周期(以毫秒计)来执行注册的回调函数。
                           
                           
                           1、参数说明

                                        参数	      类型	    必填	    说明

                                      1、callback	Function	  是	    回调函数

                                      2、delay	  Number	    否	    执行回调函数之间的时间间隔，单位 ms

                                      3、rest	    Any   	    否	    param1, param2, ..., paramN 等附加参数，它们会作为参数传递给回调函数

                            2、返回值

                                      返回值	    类型	       说明

                                    intervalID	Number	  定时器的编号，这个值可以传递给 clearInterval 来取消该定时


                            3、代码示例

                                       this.timer = setInterval(() => {
                                          //TODO
                                        }, 1000);



                    四、clearInterval(intervalID)

                                  取消由  setInterval 设置的定时器。


                              1、参数说明

                                          参数	      类型	    必填	    说明
                                        intervalID	Number	    是	    要取消的定时器的 ID



                    五、最佳实践

                                <、script lang="ts">
                                    let timer: ReturnType<typeof setTimeout> | null = null;
                                    export default {
                                      data() {
                                        return {};
                                      },
                                      methods: {
                                        onSetTimeout() {
                                          timer = setInterval(() => {
                                            console.log("setInterval");
                                          }, 1000);
                                        },
                                        clearTimer() {
                                          // clearTime
                                          if (timer) {
                                            clearInterval(timer);
                                            timer = null;
                                          }
                                        },
                                      },
                                      beforeUnmount() {
                                        // clearTime
                                        this.clearTimer();
                                      },
                                    };
                                  </、script>
                                      
            */

    </script>
  </body>
</html>